package com.framework.disconf.dao.slave;

import com.framework.disconf.entity.User;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface IUserDao2 {

    /**
    * 插入操作
    *
    * @param user
    * @return
    */
    int insert(User user);

    /**
    * 根据主键删除
    *
    * @param id
    * @return
    */
    int deleteById(Long id);

    /**
    * 根据主键集合删除
    *
    * @param ids
    * @return
    */
    int deleteByIds(Long[] ids);

    /**
    * 根据条件删除
    *
    * @param user
    * @return
    */
    int delete(User user);

    /**
    * 根据主键更新
    *
    * @param user
    * @return
    */
    int updateById(User user);

    /**
     * 按主键查询
     *
     * @param id
     * @return
     */
    User getById(Long id);

    /**
     * 按主键集合查询
     *
     * @param ids
     * @return
     */
    List<User> getByIds(Long[] ids);

    /**
     * 按条件查询
     *
     * @param user
     * @return
     */
    User get(User user);

    /**
     * 查询所有记录
     *
     * @return
     */
    List<User> findAllList();

    /**
     * 按条件查询
     *
     * @param user
     * @return
     */
    List<User> findList(User user);

    /**
     * 按条件获取数量
     *
     * @param user
     * @return
     */
    int getCount(User user);

}